PHP spl_autoload_register
全部标签 我将"cviebrock/image-validator":"1.0.*"添加到composer.json的require部分。之后,我运行了composerupdate,我收到了这个fatalerror。:::错误:::Fatalerror:Class'Patchwork\Utf8\Bootup'notfoundinF:\xampp\htdocs\project\bootstrap\autoload.phponline46Scriptphpartisanclear-compiledhandlingthepost-update-cmdeventreturnedwithanerror[R
我正在尝试将几个php脚本转换为使用__autoload函数。现在我可以像这样使用include和require函数:require_once('path/to/script.php');但是在__autoload函数内部,我不能使用上面的行。我必须使用这个:require_once('absolute/path/to/script.php');为什么__autoload函数似乎没有使用我在php.ini中指定的包含路径? 最佳答案 不要使用__autoload...它有一些缺点(包括每次执行限制自己一个)。改用spl_autolo
我正在使用spl_autoload_register为了加载类。我有一个index.php文件,其中包含一个init.php文件。spl_autoload_register函数在init.php文件中调用。在index.php文件中,它正常工作:我可以创建类和东西,它们的名称已解析。但后来,在index.php中,我包含了另一个文件work.php来完成一些特定的任务。奇怪的是,在work.php中,找不到我正在使用的类。如果我在work.php中再次调用spl_autoload_register,类就可以解析了。真正奇怪的是这种行为并不一致:在我的测试服务器上,我不必复制spl_au
我开始使用PHP__autoload函数,现在我遇到了那些奇怪的fatalerror:无法重新声明类xxx错误。这很奇怪,因为这些错误发生在我什至没有使用自动加载功能加载的类上。我还使用require_once来包含文件。我真的很困惑这个问题。任何人都知道使用自动加载时出现的此类错误吗? 最佳答案 require_once/include_once仅在尝试包含文件时查看文件名,而不是类名。所以你可以在Foo.php和B.php中都有类Foo,然后你就会得到那个错误。我不确定__autoload会给你带来什么问题,除非__autolo
我用sql创建了一个简单的登录系统它有4个主要组件index-询问用户名并通过checklogin-检查凭据登录成功首页-登录成功后的登陆页面错误生成在文章末尾给出Index.phpasksforusernameandpassNottinghamUni AuthenticationUsernamePassword checklogin.phpchecksforthecredentialsIfitssuccessitgoestohomepage.phplogsuccess.phpisbelowLoginSuccessfulthesecodesa
我在我的脚本中使用__autoload来根据需要包含类。我的脚本使用类名中的提示来查找包含它的文件。如果它以模型结尾,它在模型目录中,Controller在Controller目录中,等等。我开始实现接口(interface),因此需要调整我的自动加载器。理想情况下,当创建对象时,自动加载器将确定对象的文件名、对象的存储位置,并包含该文件。然后它会询问该类实现了哪些接口(interface),然后自动包含这些文件。有点像function__autoload($classname){echo$classname;include("classes/$classname.php");$int
我们有一个客户端应用程序依赖于已打开的register_globals,但我们将其托管在我们的共享服务器上,并且不想在我们的主php.ini文件中打开register_globals。我尝试插入ini_set('register_globals','On');但它没有用。为什么没有呢?还有更好的方法吗? 最佳答案 你总是可以尝试把:extract($_REQUEST,EXTR_SKIP);//thanks@WayneWhitty在每个文件之上。据我所知,它会产生相同的结果。但是,真的,真的,使用这些很糟糕。我会寻找一种方法来更改代码
这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭9年前。我尝试注册一个关闭函数来记录一个fatalerror。好东西,如果它适用于我的类(class)......在一个方法中我这样做:register_shutdown_function(array($this,'handleFatalError'));handleFatalError不是静态的,而是公开的:publicfunctionhandleFatalEr
我刚开始学习PHP命名空间并开始创建一个简单的自动加载函数。O所做的是:function__autoload($name){echo$name."";require_once$name.".php";}因此,如果我不使用任何别名或导入语句(例如,这会起作用)。使用MainNamespace\Subnamespace因为如果我这样做,假设我有:\GreatApp\Models\User.php\GreatApp\Models\Project.php\GreatApp\Util\Util.php\GreatApp\Util\Test\Test.php如果我尝试这样做:newGreatApp
我是PHP和Laravel的新手。我按照本教程将reCAPTCHA支持添加到我的Laravel应用程序中的页面:http://tutsnare.com/how-to-use-captcha-in-laravel-5/无论如何,我的疑问与验证码严格无关,而是与之前教程的内容有关:如您所见,它添加了这个服务提供商:'providers'=>[Anhskohbo\NoCaptcha\NoCaptchaServiceProvider::class,],根据我阅读官方文档的理解:https://laravel.com/docs/5.4/providersServiceProvider是注册我的应